package org.cg.entidade;

import org.apache.log4j.Logger;
import org.cg.componente.Energia;
import org.cg.componente.Floracao;
import org.cg.componente.Polinizacao;
import org.cg.componente.Posicao;
import org.cg.entidade.estado.EstadoCenouraSemente;

/**
 * 
 * @author luisboal
 *
 */
public class Cenoura extends Entidade {
	
	private static Logger logger = Logger.getLogger(Cenoura.class);
	
	private Energia energia;
	private Posicao posicao;
	private Floracao floracao;
	private Polinizacao polinizacao;

	public Cenoura(int eR, int eF, int eC, int nF, int nS, int x, int y){
		energia = new Energia(0, eR, eF, eC);
		posicao = new Posicao(x,y);
		floracao = new Floracao(nF);
		polinizacao = new Polinizacao(nS);
		estadoActual = new EstadoCenouraSemente();
	}

	public Energia getEnergia() {
		return energia;
	}

	public Posicao getPosicao() {
		return posicao;
	}
	
	public Floracao getFloracao() {
		return floracao;
	}
	
	public Polinizacao getPolinizacao() {
		return polinizacao;
	}
	
	public void log() {
		logger.debug(toString());
	}
	
	@Override
	public String toString() {
		StringBuffer sb = new StringBuffer("[ ");
		sb.append("{ ").append(this.getEstadoActual().getClass()).append(" } ")
		.append("{ ").append(this.energia).append(" } ")
		.append("{ ").append(this.posicao).append(" } ")
		.append("{ ").append(this.floracao).append(" } ]");
		return sb.toString();
	}
}

